package com.hskn.hss.module.tlempincidental.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hskn.hss.core.annotation.DataScope;
import com.hskn.hss.core.page.TableDataInfo;
import com.hskn.hss.exception.ExcelReaderDataException;
import com.hskn.hss.exception.HssException;
import com.hskn.hss.module.tlcostoperate.entity.TlCostOperate;
import com.hskn.hss.module.tlcostoperate.to.CostOperateCfgListTO;
import com.hskn.hss.module.tlempincidental.entity.TlEmpIncidental;
import com.hskn.hss.module.tlempincidental.to.*;
import com.hskn.hss.module.tlempincidental.vo.EmpIncidentalForListVO;
import com.hskn.hss.module.user.entity.User;
import com.hskn.hss.to.ForIdsTO;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author hskn
 * @since 2021-05-19
 */
public interface ITlEmpIncidentalService extends IService<TlEmpIncidental> {

    int insert(InsertEmpIncidentalTO insertEmpIncidentalTO) throws HssException;

    int update(UpdateEmpIncidentalTO updateEmpIncidentalTO) throws HssException;

    int deletebyid(ForIdsTO forIdsTO) throws HssException;

    TlEmpIncidental getDetail(EmpIncidentalForIdTO empIncidentalForIdTO) throws HssException;

    @DataScope(deptAlias = "empdeptid", userAlias = "createby")
    TableDataInfo getList(EmpIncidentalListForPageTO empIncidentalListTO) throws HssException;

    void excelReader(List<TlEmpIncidental> empIncidentalList) throws ExcelReaderDataException;
    @DataScope(deptAlias = "empdeptid", userAlias = "createby")
    List<TlEmpIncidental> getTlEmpIncidental(EmpIncidentalListTO empIncidentalListTo, SimpleDateFormat format) throws ParseException;
}
